In a large storage system, a central managing device manages multiple storage devices, stores received data therein, and provides the data to the clients upon their request. The storage devices are typically hard disk drives (HDDs), because of their cost efficiency and high reliability. However, the access to HDDs is relatively slow. In order to improve the performance, a storage systems may also include one or more cache memory devices, wherein data is stored temporarily, e.g. before it is written to an HDD or after it is read from an HDD to be sent to the client. The cache devices may store copies of data objects that are often requested by the clients, so that a client is provided with a cached copy of an object permanently stored in HDDs. Caching accelerates access to the previously cached data, though requires synchronization with the permanent storage.
The data is stored in an HDD in logical blocks. The size of a single block is defined by the size of a sector in an HDD. Older hard drives have 512-byte sectors, and recent hard drives—4096-byte sectors. When a cache device is used for moving data objects to and from an HDD, the data objects are stored in the same block format at both devices. However, the block format is inconvenient for operations on the data, for example deduplication and other forms of data management.